package com.appistry.maven.plugin.far.remote.ssh;

import java.io.Serializable;

/**
 * An instance of the <code>SshConfig</code> class contains the information
 * required to connect to a remote host
 * 
 */
public class SshConfig implements Serializable {

	private static final int DEFAULT_SSH_PORT = 22;

	/**
	 * Host to connect to over SSH. Can be a DNS name or IP address. Can be
	 * localhost as well
	 */
	private String host;
	/**
	 * SSH port
	 */
	private int port = DEFAULT_SSH_PORT;
	/**
	 * UserInfo instance
	 */
	private SshUserInfo sshUserInfo;

	public SshConfig() {
		super();
	}

	public SshConfig(String host, int port, SshUserInfo sshUserInfo) {
		super();
		this.host = host;
		this.port = port;
		this.sshUserInfo = sshUserInfo;
	}

	public String getHost() {
		return host;
	}

	public void setHost(String host) {
		this.host = host;
	}

	public int getPort() {
		return port;
	}

	public void setPort(int port) {
		this.port = port;
	}

	public SshUserInfo getSshUserInfo() {
		return sshUserInfo;
	}

	public void setSshUserInfo(SshUserInfo sshUserInfo) {
		this.sshUserInfo = sshUserInfo;
	}

}
